package com.net.oil.oilWear.contract;

import com.net.oil.base.IBaseModel;

/**
 * 作者：lch
 * 时间：2019/1/20 0020:下午 22:11
 * 邮箱：245850413@qq.com
 * 说明：
 */
public interface AddOilWearContract {
    interface Model extends IBaseModel {

        /**
         * 添加加油记录
         *
         * @param carId          车辆id
         * @param currentMileage 当前行驶里程
         * @param quantity       加油总量（升）
         * @param price          油价
         * @param oilMoney       加油总共花了多少钱
         * @param date           加油日期
         */
        void addFillOilRecord(int carId, int currentMileage, double quantity, double price, double oilMoney, String date);

        /**
         * 编辑加油记录
         *
         * @param id             加油记录id
         * @param currentMileage 当前行驶里程
         * @param quantity       加油总量（升）
         * @param price          油价
         * @param oilMoney       加油总共花了多少钱
         */
        void updateFillOilRecord(int id, int currentMileage, double quantity, double price, double oilMoney);
    }

    interface View {

        /**
         * 添加加油记录成功
         */
        void addFillOilRecordSuccess();

        /**
         * 添加加油记录失败
         */
        void addFillOilRecordFailed();

        /**
         * 编辑加油记录成功
         */
        void updateFillOilRecordSuccess();

        /**
         * 编辑加油记录失败
         */
        void updateFillOilRecordFailed();
    }

    interface Presenter {
        /**
         * 添加加油记录
         *
         * @param carId          车辆id
         * @param currentMileage 当前行驶里程
         * @param quantity       加油总量（升）
         * @param price          油价
         * @param oilMoney       加油总共花了多少钱
         * @param date           加油日期
         */
        void addFillOilRecord(int carId, int currentMileage, double quantity, double price, double oilMoney, String date);

        /**
         * 添加加油记录成功
         */
        void addFillOilRecordSuccess();

        /**
         * 添加加油记录失败
         */
        void addFillOilRecordFailed();

        /**
         * 编辑加油记录
         *
         * @param id             加油记录id
         * @param currentMileage 当前行驶里程
         * @param quantity       加油总量（升）
         * @param price          油价
         * @param oilMoney       加油总共花了多少钱
         */
        void updateFillOilRecord(int id, int currentMileage, double quantity, double price, double oilMoney);

        /**
         * 编辑加油记录成功
         */
        void updateFillOilRecordSuccess();

        /**
         * 编辑加油记录失败
         */
        void updateFillOilRecordFailed();
    }
}
